Chemical Markup Language

cml
Filename extension .cml
Type of format chemical file format

CML (Chemical Markup Language) is an approach to managing molecular information using tools such as XML and Java. It was the first domain specific implementation based strictly on XML, first based on a DTD[1] and later on XML Schema[2], the most robust and widely used system for precise information management in many areas. It has been developed over more than a decade by Murray-Rust, Rzepa and others and has been tested in many areas and on a variety of machines.

Chemical information is traditionally stored in many different file types which inhibit reuse of the documents. CML uses XML's portability to help CML developers and chemists design interoperable documents. There are a number of tools that can generate, process and view CML documents. Publishers can distribute chemistry within XML documents by using CML, e.g. in RSS documents[3].

CML is capable of supporting a wide range of chemical concepts including:

Details of CML and points currently under discussion are now posted on the CML Blog.

Contents

Versioning

The latest versions of the schema are available at Sourceforge. The latest frozen schema is CML2.4. A number of constructs in CML1 were DTD-based and are now deprecated so users should consider using CML v2.

Tools

JUMBO began life as the Java Universal Molecular Browser for Objects but is now a Java library that supports validation, reading and writing of CML as well as conversion of several legacy formats to CML and, for example, a reaction in CML to an animated SVG representation of the reaction.[6] JUMBO has evolved into an extensive Java library, CMLDOM[7], supporting all elements in the schema.[8] Although JUMBO used to be a browser, the preferred approach is to use the Open Source tools Jmol and JChemPaint, some of which use alternative CML libraries[9]. See Blue Obelisk.

See also

References

  1. ^ Murray-Rust, P.; Rzepa, H. S. (1999), "Chemical Markup, XML, and the Worldwide Web. 1. Basic Principles", J. Chem. Inf. Comput. Sci. 39 (6): 928–942, doi:10.1021/ci990052b 
  2. ^ Murray-Rust, P.; Rzepa, H. S. (2003), "Chemical Markup, XML and the World Wide Web. 4. CML Schema", J. Chem. Inf. Comput. Sci. 43 (3): 757–772, doi:10.1021/ci0256541 
  3. ^ Gkoutos, G. V.; Murray-Rust, P.; Rzepa, S.; Wright, M. (2001), "Chemical Markup, XML, and the World-Wide Web. 3. Toward a Signed Semantic Chemical Web of Trust", J. Chem. Inf. Comput. Sci. 41 (5): 1124–1130, doi:10.1021/ci000406v 
  4. ^ Holliday, G. L.; Murray-Rust, P.; Rzepa, H. S. (2006), "Chemical Markup, XML and the World Wide Web. Part 6. CMLReact; An XML Vocabulary for Chemical Reactions", J. Chem. Inf. Mod. 46 (1): 145–157, doi:10.1021/ci0502698 
  5. ^ Kuhn, S.; Helmus, T.; Lancashire,, R. J.; Murray-Rust, P.; Rzepa, H. S.; Steinbeck, C.; Willighagen, E. L. (2007), "Chemical Markup, XML, and the World Wide Web. 7. CMLSpect, an XML Vocabulary for Spectral Data", J. Chem. Inf. Mod. 47 (6): 2015–2034, doi:10.1021/ci600531a 
  6. ^ JUMBO
  7. ^ Murray-Rust, P.; Rzepa, H. S. (2001), "Chemical Markup, XML and the World-Wide Web. 2. Information Objects and the CMLDOM", J. Chem. Inf. Comput. Sci. 41 (5), doi:10.1021/ci000404a 
  8. ^ CML home on Sourceforge
  9. ^ E. L. Willighagen, Processing CML Conventions in Java, Chemistry Preprint Server, 2000. CPS Archives; E. L. Willighagen, Processing CML Conventions in Java, Internet Journal of Chemistry, 2001, 4. Abstract

Further Reading

External links